package h0722;

import java.util.Arrays;
import java.util.Scanner;
import java.util.StringJoiner;
/**
  * @description 求解连续数列
  * @author 不知名帅哥
  * @date 2024/7/22 11:31
  * @version 1.0
*/
public class SolveContinuousSequence {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int s = sc.nextInt();
        int n = sc.nextInt();
        getResult(s, n);
        System.out.println(getResult2(s, n));
    }

    //使用等差数列的公式
    private static void getResult(int s, int n) {
        int a1 = (s - (n - 1) * n / 2) / n;
        // 验证起始点是否为正整数以及总和是否等于S
        if (a1 <= 0 || n * (2 * a1 + n - 1) / 2 != s) {
            System.out.println(-1);
            return;
        }
        StringJoiner joiner = new StringJoiner(" ");
        for (int i = 0; i < n; i++) {
            joiner.add("" + (a1 + i));
//            System.out.println(a1+i);
        }
        System.out.println(joiner.toString());
    }

    public static String getResult2(int sum, int n) {
        int mid = sum / n;  //计算数列中间的值
        int half = n / 2;
        int right = mid + half;
        int left = 0;
        if (n % 2 == 0) {
            left = mid - half + 1; //87-3+1
        } else {
            left = mid - half;
        }
        int total=0;
        StringJoiner joiner=new StringJoiner(" ");
        for (int i = left; i <= right; i++) {
            joiner.add(""+i);
            total+=i;
        }
        if (total==sum){
            return joiner.toString();
        }else return "-1";
    }
}
